Skip to main content

Full text of "ZX Appeal"

See other formats


SEPT/88 ° 


Vancouver sinclair 
Users g OHF 


NeXT meeTiny 


ZXAppeal is a monthly 

newsletter put out by the 

Vancouver Sinclair Users Group. 

For more information on the 

group and ZXAppeal see the backcover. 


THIS ISSUE. ii we acien 


Summer is over and now it's back to 
the grind. Hope you had a good 
vacation. The cooler weather should 
come shortly and with it more time 
spent indoors. And that means more 
time spent computing! 


Not much in the way of submissions 
this month other than a couple of 
things from Harvey: another ‘Playing 
with', and his thoughts on the recent 
'Do' in Portland. ( I'm still not sure if 
he liked it or not.) I"ve- managed to 
steal an item you might find of interest: 
a recent write-up on Clive in a new 
'PC' type mag. This one is a little more 
positive in its viewpoint. Part II of the 
‘Cassette Connection'- continued from 
Part 1 last month, is reprinted from 
SyncWare News with Fred's 
permission. And some other stuff 1 
hope you'll find of interest. 


By the way, the April issue included an 
article by Harvey on Modapters for the 
QL. Well, the circuit diagram was left 
out by mistake. This error was not 
noticed by any reader until the article 
was reprinted in another newsletter. 
They didn't notice it either but 1 did. 
When I read their newsletter and saw 
the diagram missing, 1 checked back in 
the April issue to find that I'd left it 
out also! Does anyone read this stuff??? 


ARA a ae Oe a a o a a EE EE EEE 


Bits & Pieces ini dni dra 


... Keeps on Tickin"...another report 
has come in saying ZX81s are still being 


used to manufacture dedicated 2 


industrial controllers. This time it is a 
Swiss firm - adding an LCD display and 
I/O interface to the "door-stop". 

...the paper library now has a copy of 
each of the Sam's books 
"ComputerFacts" technical and repair 
manual for both the 1000 and the 2068. 
If you need to know any of the 'specs' 
of either machine, these publications 
will have it. 

...the PCCFA will be holding the next 
Computer Fair and Swap Meet/Flea 
market on Saturday, October 1. The 
group will again be holding down a 
couple of tables to show-off our 
machines and let the world know 
we're still around. All members 
wanting to 'man' the tables can put 
their name on the list at the Sept 
meeting. Everyone should try to drop 
in to this Fair as some great bargains 
can be found. 

...your Editor is now the owner of the 
QL previously owned by the man who 
oversaw the development of the QL for 
Sinclair. Nigel Searle sold me an 
original ZX80 kit as well as his personal 
QL, complete with software, p/supply, 
& manual, for $50.00. He paid $20.00 
postage to mail the QL to me! 

...aS you will read within, Harvey T. has 
succumbed to the hacker's version of 
'threefootitis'. This is the affliction 
that strikes boat owners every spring - 
they start drooling over boats about 3 
feet longer than the one they presently 
own. Harvey bought an Amiga. He 
advises he will still work/play with his 
QL and even bought some additional 
RAM for it from Sharp's at the recent 
‘Fair in Portland. Too bad the 3086 


didn't see the light of day. 


„next 
meeting 


A GREAT NORTHWEST SINCLAIR 
FEST TRIP REPORT 


-by Harvey Taylor 


| wasn't going to go. | had made up my mind | 
was too disappointed last year, it was too far 
away, | didn't want to go to the states again. 
Then at the last minute Wilf phoned & bang. In 
an instant, | changed my mind. 


Well, | have good news & | have bad news. The 
good news is that only the fanatics are left 8 
the bad news is that only the fanatics are left. 
You could characterize the fest as more of a 
wake & catch one of the predominant feelings 
there. Some dry statistics tell the tale... 
Expected attendees 300-600. Actual attendees 
100-150. There were a lot of “Why aren't there 
more users, more club members --- Where did 
everybody go?” questions. And the answers are 
fairly clear, if you care to look. They went back 
to golf/cars/girls/the latest craze or they 
moved on to Mac/Amiga/ST/IBM/robots/ or 
whatever non-orphan. 


A group like a computer club exists in one 
sense as a group self-education process. At the 
beginning, we were all lost & maybe somebody 
in the group had come across your problem & 
knew how to fix it or avoid it. We all taught 


each other our neat tricks. Some passed through 
the group quickly. Others stuck around and made 
friends. There are those few who really are 
attracted by design elegance, by facing the 
question --- just how much can you pack into 
8K of ROM. Fanatics. 


As for the Festival itself..there were a few 
high points - the evening free-for-all when 
somebody asked how many people were 
seriously interested in the 266 & two dealers 
held up their hands. Also during the 
free-for-all, there was a spark of life when 
plans were made to try to interest the SNUG 
(Sinclair National User's Group) [Americans 

have no inkling why they might went to call 
this proposed organization a North American 
User's Group] group in a BBS based continental 


newsletter. 


The other interesting part of the Fest for me 
was just in the people | met. It is a treat to 
meet £ talk with other knowledgeable QL'ers -- 
to find out what other people are developing & 
wrestling with. These personal contacts are the 
ultimate rationale for such Festivals. 


PLAYING WITH ELECTRICITY 
- Harvey Taylor 


_. Tucked away in a description of the QL hardware in the 
Technical Guide is mention of the fact that bit 7 of the 
Display Control Register “can be used to switch the base of 
screen memory from $20000 to $28000”. Hmmm, interesting | 
thought and went on to more pressing concerns. 

Recently, | went back to investigate the dual screen 
display. There is a discussion & program dealing with it in 
Adrian Dickens “QL Advanced User Guide”. The news is it is 
real; but flawed. First a quick overview of the QL memory 
map. 


256K 00040000 Top of On Board RAM 
192K 00030000 Top of Screen! 
Top of Common Heap 
Base of Common Heap 
00028480 Top of Sys_Var 
160K 00028000 System Variables & Base of Screen1 
00027FFF Top of Screend 
128K 00020000 Base of Screend 


The immediate problem with the second Screen is the fact 
that the System Variables are locked into $28000 which is the 
base of Screen!. This means that if you simply flick the bit 
which controls the base of the display, you will get a bunch 
of garbage onthe top of your screen. The garbage is the 
video representation of the System Variables. 

You can take a look at this effect with the following 
short Superbasic Procedure. 


100 REMark switch in Screen 2 

110: 

120 DEFine PROCedure SWITCH 

130 SY_MCSTA=163892 : REMark $28034 

135 DC_REG =98403 : REMark $18063 

140 DCRZSTATUS=PEEK(SY_MCSTA) 

150 DCR_STATUS=DCR_STATUS ” 128: REMark toggle bit 7 
160 POKE SV_MCSTA,DCR_ZSTATUS  : REMark tell Sys_Var 
170 POKE DC_REG,DCR_STATUS  : REMark tell hardware 
180 END DEFine SWITCH 

190: 


This is interesting, but useless. To make a useable 
display, one has to be a little trickier. One of the neat 
things about the QL is that QDOS is extensible. In 
particular, one can link in tasks for the QL to perform efter 
each interrupt. There is a Level 2 Interrupt (called a Frame 
Interrupt) on the QL every 1/60 second; which is related to 
the Vertical Sync signal. 

What we need to do is Link in a short Task which checks 
what screen we are displaying; then if we are displaying 


ScreenO, do nothing, while if we are displaying Screen1, wait -H~ 


until the display has passed the SK or so of System Variables 
then switch in Screen}. 

The assembly language code to do this is listed below 
in the file DualScr_esm. Once you have this code installed, 
you will run into the next problem. There is no support in 
QDOS for writing to Screen1. It is evident that in the 
development of the QL, this was a matter of some debate, 
because in the SCR/CON Channel Definition Block (CD_BIk), 
there is on entry (SD_SCRB) Base address of screen. The 
unfortunate fact is that the SCR/CON device driver does not 
use this variable. Instead the base address ($20000) is 
hardcoded into the driver. This was no doubt done in concert 
with the decision to tie the System_Variables at $28000. 

As the QL is at present, if the driver did use the 
CD_BIk variable, clearing the screen would erase all the 
System_Variables; so it is just as well that it is not 
implemented! 

What's to do? It seemed to me that the simplest method 


- to use would be to simply copy Screen0 into the useable part 


of Screen1. The Superbasic extension SCOPY performs this 
task. | wanted a Clear Screen! capability as well, so | added 
the PROCedure SCLR. This procedure expects one parameter 
which is used to colour Screen!. The video ram of the QL 
display is arranged thus: 


Mode 4 
Even Byte : Odd Byte 
76543210 76543210 - Bits 


GGGGGGGG : RRRRRRRR G - Green 
R - Red 

Mode 8 F - Flash 

Even Byte : Odd Byte B - Blue 


76543210 76543210 -Bits 
GFGFGFGF : RBRBRBRB 


Passing SCLR the parameter 0, will point the screen 
black. You can play with other parameters to see the effect 
of setting various bits. If you use 65280 for Green, the 
interpreter returns an overflow error; but -256 works fine. 
255 paints the screen red. 

The procedure SCRO turns off the Auto-Toggle and gives 
you the default display, ie. ScreenO. The procedure SCR1 
turns off the Auto-Toggle and gives you Screen!. The 
procedure SCRA turns on the Auto-Toggle; ie. switch between 
the two screen using <CTRL><F5>. 

The function SCRNUM tells you which screen is currently 
being displayed, O or 1. The function SWHERE tell you the 
base of the Common Heap Memory reserved by the initialization 
code. 

There are some proviso's with this code. It should be 
initialized fom a boot: in particular before a directory of 
a second device is done. This is because we went Screen! to 
begin as close to the Base of the Common Heap as possible. If 
you do a directory of another device before initializing; 

QDOS reserves some common heap as a Channel Definition Block 
and a Physical Definition Block. This will show up as a white 
band similar to what SWITCH produces. 


Related to this situation is the value of the Timeout 
value used to wait before switching Screen! on. See the 
comments in the _asm file. = 
The other proviso, is that the dividing line where 
Screen! switches in is not stable. The easiest way to handle 
this problem, is to put a black border over the region 
similar to the PROCedure SDEMO below. 
The first SBasic program below creates a file DSCR_ext 
which is used by the second the SBasic program SDEMO. 
>eof 


100 REMark PLAY WITH SCREEN UTIL 
110: 

120 LAYOUT 

130 INIT 

140 DEMO 

150 STOP 

160: 

170 DEFine PROCedure DEMO 
160 PAPER 0: CLS 

190 PICTURE 

200 PAPER 4 

210 AT 0,0: PRINT ‘SCREEN 1° 
220, SCOPYr230 SCRI 

240 CLS 

250 SCRO 

260 SCRA 

270 LISTTO 260 

280 AT 0,0: PRINT ‘SCREEN 0° 
290 PRINT*0/'USE <CTRL><F5> TO TOGGLE SCREENS’ 
300 END DEFine DEMO 

310: 

320 DEFine PROCedure PICTURE 


330 FOR M=0 TO PI STEP .25: FOR N=0 TO 105 STEP 15 : INK (RND(2,6)): 


CIRCLE 200, 128,N,.5,M: END FOR N : END FOR M 
340 INK7 
350 END DEFine PICTURE 
360: 
370 DEFine PROCedure INIT 
380 nem$="SCR2_ext' 
390 dev$="fipi_' 
400 LBYTES dev$ & nam$,RESPR(S 12) 
410 PRINT'Loaded' 
420 CALL RESPR(O) 
430 PRINT'Initialized' 
440 END DEFine INIT 
450: 
- 460 DEFine PROCedure LAYOUT 
470 WINDOW*0,512,64,0,0 : BORDER *0,10,0 
480 WINDOW*1,512,192,0,64 : BORDER *1,10,0 
490 WINDOW*2,512,192,0,64 : BORDER *2,10,0 
500 PAPER*2,4: INK*2,0 
510 PAPER*1,4: INK*1,7 
520 PAPER*0,2: INK*0,7 
530 SCALE 256,0,0: MODE 4 
540 END DEFine LAYOUT 


100 REMark Create SCR2_EXT file 
110: 

120 DLOAD 
130 DSAVE 
140 STOP 


“> TO": 


160 DEFine PROCedure DSAVE 
170 REMark Save memory to file 
160 nam$="SCR2_ext’ 


190 dev$="flpi_ 

200 SBYTES dev$ & nam$,RESPR(0),406 
210 END DEFine DSAVE 

220: 

230 DEFine PROCedure DLOAD 

240 REMark writes DATA to memory & inits PROC & FUNC 
250 addr=RESPR(512) 

260 RESTORE 400 

270 REPeat loop 

280 READ x: IF x=-1: EXIT loop 

290 POKE addr,x 

300 addr=addr+ 1 

310 END REPeat loop 

320 PRINT*O/Loaded ' 

330 CALL RESPR(O) 

340 PRINT*0/Initialized' 

350 END DEFine DLOAD 

360: 

370 REMark SCR2_ext code for 2 screens utility 
380 REMark SCLR,SCOPY,SCRO,SCR1,SCRA; SCRNUM,SWHERE 
390 REMark 

400 DATA 67,250,0,70,52,120,1,16 

410 DATA 78,146,116,0,34,60,0,3 

420 DATA 0,0,6 

5,249,0,2,128,0 

430 DATA 32,40,0,8,65,240,8,0 

440 DATA 146,136,47,1,112,24,78,65 
450 DATA 34,31,74,128,102,24,67,250 
460 DATA 1,16,34,136,67,250,1,24 

470 DATA 65,250,1,12,112,28,33,73 
480 DATA 0,4,78,65,112,0,78,117 

490 DATA 0,5,0,144,4,83,67,82 

500 DATA 65,0,0,144,4,83,67,82 

510 DATA 48,0,0,144,4,83,67,82 

520 DATA 49,0,0,88,5,83,67,79 

530 DATA 80,89,0,34,4,83,67,76 

540 DATA 82,0,0,0,0,2,0,174 

550 DATA 6,83,67,82,78,85,77,0 

560 DATA 0,116,6,83,87,72,69,82 

570 DATA 69,0,0,0,52,120,1,18 

580 DATA 76,146,74,128,102,8,12,67 
590 DATA 0,1,103,4,112,241,78,117 
600 DATA 48,54,152,0,65,250,0,154 
610 DATA 32,80,67,249,0,3,0,0 

620 DATA 48,192,177,201,101,250,96,0 
630 DATA 0,132,67,249,0,3,0,0 

640 DATA 32,9,65,250,0,124,32,80 


-S~ 


650 DATA 144,136,83,64,69,249,0,2 
660 DATA 128,0,19,34,81,200,255,252 
670 DATA 96,98,67,250,0,104,80,209 
680 DATA 96,90,67,250,0,96,66,81 
690 DATA 96,82,67,250,0,88,50,188 
700 DATA 0,255,96,72,67,250,0,74 
710 DATA 34,17,34,110,0,88,93,73 
720 DATA 45,73,0,88,66,118,152,0 
730 DATA 74,129,103,16,52,60,8,32 
740 DATA 83,66,227,129,104,250,226,145 
750 DATA 61,130,152,0,45,129,152,2 
760 DATA 120,2,96,24,114,1,194,58 
770 DATA 0,29,34,110,0,88,85,73 
780 DATA 45,73,0,88,61,129,152,0 
790 DATA 56,60,0,3,112,0,78,117 
800 DATA 0,0,0,0,0,0,0,0 

810 DATA 0,0,0,0,0,0,18,46 

820 DATA 0,52,19,193,0,1,128,99 
830 DATA 74,43,0,7,103,36,74,174 
840 DATA 0,152,102,50,74,174,0,156 
850 DATA 102,44,74,46,0,238,102,38 
860 DATA 48,60,6,44,81,200,255,254 
870 DATA 8,193,0,7,19,193,0,1 

880 DATA 128,99,74,43,0,6,103,14 
890 DATA 74,46,0,51,103,8,81,238 
900 DATA 0,51,70,43,0,7,78,117,-1 
910: 


Disk Droppings 
by 
Greg Lloyd 


The latest offering from Larken Electronics is a 256K 


RAM-DISK for the 2068. It gives the owner up to 2561 
of Hon-Yolatile Static Ram (SRAM). This is battery 
backed storage of up to 256K of programs and data. It 
can be used in conbination with the DSK 488 disk 
interface and 4 disks or on its own with the LEIDOS 
cartridge. It will also AUTOSTART to load and run a 
program on power up. 

The board used for the RAM-DISK is roughly the size 
of the DSK 466 - 4 x 2 inches and piggy-backs to the 
your disk interface or the expansion port on the 2068. 
It is fully through ported so other periferals can be 
hung behind. My 2656 nodem and 2049 printer worked 
just fine. The order of installation does not seen to 
matter. I used the DSK 408 interface then the RAM-DISK 
personally. 


To default to the RAM-DISK you just have to press the 
[ J J key and [ ENTER ] on power up. If you have saved 
a startup aenu or any other application it loads and 
runs immediately. The tine involved is about one 
second. If you have used the 1/S Command Cartridge 
System to run Crazy Bugs or States and Capitals you 
will see the advantage over tape and disk. The added 
feature is that you can save and change data on the 
RAM-DISK and it will still be there after you turn the 
sachine off. This all happens in a blink of an eye. No 


Reprinted from the May/June issue of Sinc-Link - the 


N/L of the Toronto T/S Users Group 


whirring, clicking, popping, grinding, crunching, 
gorching or glitching and no red leds flashing. You 
can also use the command PRINT $4: GOTO 4 if you are 
already powered up. The LIDOS software sees the RAN- 
DISK as the fifth possible drive. All in all, a new 
and nost unusual experience. Larken Electronics has 
not only brought 2068 disk users a new standard of 
compatibility but now a new meaning to the phrase 
“Silent Service”. 

Sir Clive’s latest creation the 1-88 (bearing the 
Cambridge Computer name and a huge price tag in ay 
huable opinion), uses the same principal to store and 
operate. Solid state memory is certainly faster, nore 
robust and has fewer moving parts than any disk systea 
I have seen. I think it is the most sensible way to 
go, barring the resurrection of those beloved micro- 
drives. My system has 128 of SRAM on board. This gave 
ae enough storage to be useful and no concern about 
saking the mortgage payments. 

The bare board unassembled and without memory is 
priced at $15. The assembled board without memory is 
available for $68. A LIDOS cartridge and software 
upgrade is necessary to run this option. The setup 
could be used as the only source of storage if 
desired. It does aake a neat solution to those of you 
who wish not to go for a disk drive. All other 
functions are still available so you could save to 
tape for permanent storage and backup. 


Larry Kenney the wizard behind the system, has 
developed a back-ground print spooler. This feature 
allows Tasword files to be printed while another 
progras is running. This is another plus to the 
system, the creator is using and developing further 
enhancerents to the machine. And you thought you had 
an orphan computer. Sorry to disappoint you. 

SRAM chips needed for the RAM-DISK are 43256LP fron 
NEC or 62256LP from other manufacturers. The latter 
are priced $26.48 (Can.) at Active Components. The 
speed of these should be 128 or 158 nanosecond. The LP 
stands for low power and unless you have an unlimited 
supply of batteries its recozmended you use the LP 
version. Larken Electronics has some SRAM chips avail- 
able for less and Computer Shopper has thea advertised 
from $11 to $13 (0.S.) if you want to wait. Price is 
now volatile in the non-volatile resory narket. 

So if you have a DSK 488 from Larken and want to get 
the latest goody or if you don’t have a disk and want 
sone of the benefits, get in touch with your checkbook 
and order the RAM-DISK. I find it the best thing I 
ever did for ay 2068 system. To quote from the movie, 
“I feel the need ...-the need for SPEED". You don't 
need to join the Navy or buy and F-14, get a RAM-DISK 
from Larken and go supersonic. GBL 880428. 


2068 CASSETTE CONNECTION 


Part Il: Loading Tips 


In the last issue, I recummended removal of a couple 
capacitors in the SAVE circuitry of the TS2068. This _ 
provides a “brighter” save signal, which makes 
subsequent loading more reliable. This is all that 

is required to get many systems working "up to 


spec," and makes the use of “fast-load” routines 
possible, even practical. On further research, 
however, I found that there can still be problems 


with some systems involving the LOAD portion of the 
computer-to-tape interface. In this article, I'll 
discuss the load circuitry, and suggest a few minor 
changes that you can make to improve reliability if 
you're still having trouble. 


Before I get on with this, I should mention that NOT 
ALL. TS2068's ARE CREATED EQUAL. I had the oppor- 
tunity to look at a 2068 recently acquired from 
Games To Learn By (GTLB), and found that the small 
capacitors directly across the MIC and EAR jacks on 
the underside of the board were absent on this unit. 
Also, the two series 1N4148 diodes CR25 and CR26 
(discussed later) were bridged with a single 
identical unit, Furthermore, there are appreciable 
discrepancies between the Timex schematic and the 
actual hardware. For example, the SAVE circuit shows 
yet another capacitor across the MIC output (C72) 
which is not even marked on the board on either unit 
I've seen. There are also various other capacitors 

and wires floating around which look suspiciously 
like “tack-ons." 


To complicate matters further, it appears that there 
are at least two discrete board patterns in 
existence, with different parts callouts for the 
same components. These alternate parts callouts are 
shown on the schematic in parentheses with a "-3A" 
suffix, For example, capacitors C7 and C8 in the 
LOAD circuitry (discussed later) are C6 and C7, 
respectively, in the "-3A" version. Both of the 
boards I've seen have a "-03D" suffix in the number 
under the "TIMEX 2000" legend and both corresponded 
with the "-3A" variation on the schematic, so 
presumably any board designated "-3A" or greater 
will follow the alternate part numbers on the 
schematic. The bottom line is that what you read 
here and elsewhere about the 2068 hardware may or 
may not jive exactly with your machine. 


FIGURE 1. 


Insert Figure 2 here 


EAR JACK 


-001 uFd. 


2 


c73 
120 pFd. 


f the author. 


10n O 


h permiss 


lews wit 


T 
N 


Reprinted from SyncWare N 


Now, let's see what we can do to make 1t easier to 
“get loaded" on the 2068. The applicable portion of 
the schematic is reproduced here in Figure 1. As in 
the case of the MIC jack, there is at least one 
capacitor (C73) directly across the EAR jack. Again, 
this (or these) were presumably included to help 
reduce radio and TY interference. It seems that 
Timex's philosophy was, “if some capacitors do some 
good, then more will do more good." Unlike the caps 
across the MIC port, however, the one or ones on the 
EAR jack have a negligible effect on the tape signal 
itself. This is because the impedance looking into 
the MIC input of the recorder is several magnitudes 
higher (typically about 50,000 ohms) than the 
impedance of the EAR output (around 10 ohms). As a 
result, there Is nothing to be gained by removing 
these capacitors, so you might as well leave it in! 
Who knows, they might even help reduce interference 
slightly. 


Looking further into 
resistor (R11, 
jack as well. Again, this is so 


the schematic, we find a 
1000 ohms) in parallel with the EAR 
much greater than 


the output impedance of the tape recorder EAR jack 
that it has no significant effect on the tape 
signal. It was probably included to provide the DC 


return required by some recorders. After that is a 
little network consisting of two resistors R12 and 
R73, two caps C8 (C7-3A) and C7 (C6-3A), and two 
diodes (CR25 and CR26). This is essentially a “diode 
clamp" circuit, which shifts the signal from, say -3 

to +3 volts, to about -4 to +1,2 volts. Also, it 
provides a low-frequency (LF) corner of about 230 
Hz., and a high frequency (HF) corner near 23 kHz. 


My reason for digging into this was that I sometimes 
couldn't get some tapes to load, even at maximum 
volume setting on my 6 volt TS2020 or Minisette 
IX's. A quick measurement showed that my line 
voltage was somewhat low, around 110 volts. My 
present home-sweet-home has long secondary power 
lines and electric heat; I found that some tapes 
would load ok with the heaters unplugged, but 
wouldn't "take" if the AC line voltage dropped below 
the rated 120 VAC. A colleague reported similar 
problems, especially when trying to use a fast-load 
program to speed up the tape processes. If you're 
having similar border-line sensitivity problems with 
tape loading, the following modification may quite 
possibly handle it. 


2.2K (add) 


-7 


+5V 


R72 390K 
C7 (C6-3A) 


ol uFd. 
PIN 15 


SCLD CHIP 
(tape in) 


R73 62K 


C8 .001 uFd. 
(C7-3A) = 


(optional to remove) 


2068 LOAD Circuit Mods 


1: Open the 2068 by removing the seven screws and 
disconnect the keyboard tall. (Thankfully, the 
KB tail on the 2068 is considerably more 
substantial than the ones on the ZX81/TS1000!) 


2: Locate the 6800 ohm resistor, R12 (blue-grey- 
red-gold). This is about 1 cm. below and 
slightly to the left of the C10 capacitor you 
removed last issue. Bridge this resistor with a 
2200 ohm, 1/4 watt unit (red-red-red-gold). 
This will make the mod easy to remove if it 
doesn't do the trick for you. Alternately, you 
may clip the 6800 ohm resistor and replace it 
with an 1800 ohm unit. This increases 
sensitivity, which in my case was enough to 
allow loading tapes that wouldn't quite "take" 
even at full blast. It also raises the LF 
corner, making the system yet more immune to 
low-frequency garbage. 


3: I also removed capacitor C8 (C7-3A), even 
though doing so is not strictly necessary; the 
HF corner created by this cap ls high enough to 
avold trouble with the standard tape routines. 
However, it may conceivably get in the way if 
you later use VOTEM or other V-F (voltage to 
frequency) analog interfaces, or if you decide 
to experiment with fast-load routines. Although 
the 2068 (about 1500 baud)is a lot faster than 
the ZX81 (at about 300 baud), a good tape 
recorder will support even faster loading; up 
to about 3500 baud, or 440 bytes per second. 


4: Reconnect the KB tall, and set the board back 
into the case. Test your modification. If 
you're satisfied that you now have enough 
sensitivity, screw the two case halves back 
together, 


This will handle many loading problems. Aside from 
the comparatively low sensitivity of the 2068's load 

ciecultry, there's not much for which it can be 
faulted. Unlike the ZX81, the SCLD custom chip 
apparently contains a comparator to square up the 


FIGURE 2, +15 to 18 Volts 
c3 
INPUT FROM 
EAR JACK —— 
$ OUTPUT TO 
> | R11 and R12 
cı 
R4A 
R4B 


signil. As a result, adding a comparator or Schmidt- 
trigger conditioner probably won't have a noticeable 
effect. However, if you have a tape recorder with a 
6 volt supply, chances are you might still have 
trouble with sensitivity. If so, here are a few 
options: 


l: You can use VOTEM to help out, but you'll need 
to make a couple modifications. First, you'll 
have to supply a 9-volt power source such as a 
“transistor radio" type battery. Then, you'll 
have to connect the function of R1 and RS to 
+9Y instead of +5, to give you a larger output 
swing. One caution, however; this modification 
may make it unusable with the ZX81/TS1000, as 
these prefer a lower tape signal voltage and 
some of them balk if it's too high. 


2: Get a recorder with a higher supply voltage, 
e.g. 7.5 or 9 volt. This will allow a higher 
output swing. 


3: Replace your present 6Y AC adaptor with a 7.5 
volt unit. These are available from Radio Shack 
and other sources. Try to get it on the 
condition that you can return it if it doesn't 
do the job. The slightly increased supply 
voltage will not harm well-designed recorders, 
but may be just enough to push you “over the 
hump." This option, if it works, is a lot 
cheaper than buying a new deck. 


You might experiment with the number of diodes In 
the clamp. (Be warned! You are dealing directly with 
the SCLD chip. DON'T BLOW IT!-ed.) This affects the 
positive clamp level, at the rate of about .6 volts 

per diode. As mentioned above, the units from GTLB 
have the two diodes (CR25 and CR26) bridged with a 
Single one. I tried this on mine, and found that it 
actually seemed to make matters worse. I also tried 
adding an extra diode in series, and found no 
noticeable change. You might also try increasing C8 
(C7-3A) to, say 0.22 uF., especially if you reduced 
R12, 


PARTS LIST - 2068 LOAD AMP 


C1-C3 - luFd., 16V tantalum 
C2 - 47 uFd., 6Y electrolytic 
Q1 - general purpose audio transistor 
2N3904, 2N4401, etc. 
R1 - 910 Ohm 1/4 watt 
R2 - 4700 Ohm, 1/4 watt 
R3 - 470 Ohm, 1/4 watt 
R4A - 100 Ohm, 1/4 watt 
R4B - 33 Ohm, 1/4 watt > 


1"x 1" perfboard, wire, solder, sticky foam. 


** Por the convenience of those readers who would 
rather not scout around for parts, I (Fred Nachbaur) 
will wire up these boards, so that they will be 
ready for you to install, for $6.00 each (add $3.00 
for speedy mail service). You'll then only have to 
cut one trace and make four wire connections. 


..cont'd on pg.10 


a U RO | z C E stolen from the Sept/88 


O... a Profes- 


sor Brainstorm-type eccentric British 
inventor and most people will conjure 
up something approaching bald, be- 
spectacled Sir Clive Sinclair. Sir Clive 
is the designer of such great leaps for- 
ward as the first mass-produced electric 
car (a dismal flop), the flat 2!/,-inch 
TV screen (he beat the Japanese into 
production with one), and a handful of 
market-shattering personal computers 
dubbed the ZX range, which are best 
known in Europe. The ZXs are now 
part of the ever-growing Amstrad em- 
pire, to which Sir Clive sold the 
venture. 

Now ensconced among the academic 
spires of Cambridge, a sleepy train ride 
from London, Sir Clive probably got 
the idea for his latest foray into com- 
puters during 
painfully boring 
journeys to the 
capital. 

Sir  Clive's 
new brainchild 
is called the 
Cambridge Z88, 
and your first 
delightful im- 
pression as you 
take it from its 
box is that it is 
so light, some- 
one must have 
forgotten to put 
the electronics 
inside. Immedi- 
ately you might 
ask, “Where are 
the disk drives?” 
The fact is there 
are none, which 
starts a worry- 
ing series of 
thoughts along the lines of, “How am 1 
going to get data to and from my desk- 
top IBM-compatible PC?” 

This gets to the heart of what the Z88 


Eccentric British inventor Sir 
Clive Sinclair can add a 
notebook-sized computer to his 
list of accomplishments. 


By PETER WHITE 


is really about—serious portability and 
“no tears” translation into PC-DOS 
machines, especially for WordStar us- 
ers. Sir Clive clearly realized that the 
only thing computer users on the move 
need to do is input data in retrievable 
form. 

So he’s built a machine, based on the 
Zilog Z80 chip, that weighs less than 2 
pounds and is about the size of a letter- 
sized paper pad. And on close inspec- 
tion, you'll discover that the Z88’s 
slightness doesn’t compromise its func- 
tionality or compatibility. 

Power is provided by four ordinary 
AA batteries, which in the machine’s 
unexpanded version give you about 20 
hours of working time. The display is 
an eight-line, 100-column supertwist 
LCD. The Z88 uses solid-state storage, 
with additional 
memory capaci- 
ty provided by 
EPROM car- 
tridges that fit 
into slots on the 


front of the 
machine. 
Even when 


the screen dis- 
play is switched 
off, everything 
held in the com- 
puter’s memory 
is maintained— 
so long as the 
batteries have 
sufficient power. 
The screen dis- 
plays a warning 
when the batter- 
ies are getting 
low, and an in- 
ternal capacitor 
will keep the 
power going for up to six minutes while 
you’re changing them. If you’re using 
all three slots, however, you’ll have only 
about 60 seconds to make the change. 


= O 


issue of PC Computing 


Software is provided by an integrated 
package called Pipedream, which incor- 
porates word processing, spreadsheet, 
and database capabilities. The machine 
also comes with pop-up utilities, in- 
cluding a clock, a calculator, a diary, an 
organizer, and an alarm reminder. 

The standard Qwerty keyboard in- 
cludes a few unusual dedicated keys— 
Index, Menu, Help, and a key marked 
with a square and another with a dia- 


Sir Clive’s Z88 road 
machine—as light 
and small as a book, 
as wacky as its 
inventor. 


mond—that are linked to features of 
the software. 

Pressing the Index key returns the 
user to the main command level of the 
software and suspends the current op- 
eration. The Help key gives context- 
sensitive information about the current 
operation. The Menu key lets the user 
make selections regarding the current 
application; each menu selection is dis- 
played with a shortcut equivalent that 
can be used in lieu of entering the full 
command. 

The square and diamond keys are the 
prefix keystrokes for making shortcuts. 
The square introduces a shortcut for 
calling an application; the diamond pre- 
cedes a shortcut for carrying out an 
operation. 

The keytoard is covered by a rubber 
mat, which gives a dead feel to the keys 
but insulates the machine from con- 
tamination. It is virtually noiseless un- 
less you activate the toggle to introduce 
an audible click for each keystroke. 

Another unusual feature of Pipe- 
dream is its page-display map, which 


..next page 


cont'd from pg 8 
The Final Solution 


If you reduced the value of R12 as described above 
and still don't get enough sensitivity with your 
deck, and if the other “fixes” don't appeal to you, 
your best bet is to add a linear amplifier to boost 
the signal to the computer. Not much gain is needed, 
so a single-transistor “class A" stage is all you 
need, The circuit of Figure 2 is the answer that my 
ZX81 “CE AMP" program came up with. It has a voltage 
gain of about 3, and a P-P output swing of about 10 
volts, Cost in parts is around $4, depending on how 
much of the circuit you have in your junk box. On my 
machine, ít allows most tapes to load reliably with 

a volume setting anywhere between 4 and 10, 


Wire it up on a 1"x1" piece of perf board, cut the 
trace to the EAR jack (underside of board) and 
connect the EAR jack to the input. Connect the 
output to the left side of R12. Get the +15 volts 
power for the circuit from the on-off switch (SW2), 
the leg closest to the front edge of the board. A 
good place to get the ground is from the grounding 
strap soldered to the top of the video-section 
enclosure. (If you want to get fancy, you can make 
use of the expansion -port area. Al-top left is 
ground, A2 is the EAR jack and B3 is the +15V 
power.-ed.) The transistor can be virtually any NPN 
silicon type capable of at least 200 mW. dissipation 
and having a current gain (beta) of 50 or higher; 
e.g. 2N3904, 2N4401, etc. (Beware of the Radio Shack 
"2N 3904 grab-bag." These are, in my experience, 


supplies, increase the gain to about 4 by making R1 

= 1000 ohms, R4A = 75 ohms, R4B = 62 ohms. Cl and C3 
should be 16V tantalum units, C2 may be an aluminum 
electrolytic rated 3Y or up. 


Load Amp for TS1000 


You can use the one-transistor load amplifier 
circuit with the ZX81/TS1000/TS1500 by making the 
following changes in component values: * 


R1 = 1000 ohms. R4B - not used * As for the 2068, 


R2 = 4700 ohms Ci = 1 uF. Pre-wired boards 
R3 = 160 ohms C2 - not used are available from 
R4A = 33 ohms C3 = 3.3 uF. 


the author for $6 


These changes are necessary because of the different 
supply voltage (9V instead of 15V) and input 
resistor value (220 ohms instead of 1000 ohms) as 
compared to the TS2068. Gain is set at about 3, and 
P-P voltage swing is just under S volts. 


If you're using fast-load routines such as Z-XLR8, 
SDS, or Q-SAVE, it is recommended that you change 
capacitor C11 (located near the MIC jack on the ZX81 
board) from 47 nF. to 20-22 nF (.02-.022 uF.). This 
increases the HF corner of the SAVE circuitry from 
about 3,5 kHz. to over 7 kHz. and provides a 
brighter signal. I did this simply by breaking the 
existing capacitor in half horizontally, using a 
pair of wire nips; works fine, but not a 
“guaranteed” procedure. After doing this mod, I 
found that I could run SDS (similar to Z-XLR8 at top 


pretty lousy.) 


Mount the board on top of the keyboard diodes (in 
front of the keyboard connector) using sticky-foam; 
watch for shorts. If you wish to use one of the 
recorders with their 3V 


little “Walkman"-type 


EUROTECH 


appears on the right side of the screen 
and shows the layout of the whole page. 
It allows you to start formatting a docu- 
ment while you’re still in transit. If 
you’re downloading to WordStar, it can 
even retain print commands in a file af- 
ter it’s been dumped to DOS. 

At the end of a journey, the down- 
loading procedures are simple and reli- 
able, expedited via a cable using a 9-pin 
RS-232 serial port and PC-Link II 
communications software. The soft- 
ware for the transfer resides in a 32K 


The Z88’s biggest 
attraction is its 
price. The basic 
machine costs 
only $549. 


EPROM cartridge in one of four Z88 
slots and on a floppy on the target ma- 
chine, which controls the download. 
Not the least of the Z88’s attractions 
is its low price. The basic machine costs 
$549 in the United States, although for 


this you get only 32K of memory. Ex- 


pansion cartridges are available in 32K, 
128K, and 512K packs, but a 512K car- 
tridge together with a PC link will al- 
most double the initial price. . 

Sir Clive’s Z88 will be distributed in 


=- 


speed) even without a pre-conditioner. 


So there you have it. That should wrap {t up, at 
least from a hardware standpoint. In a future issue 
we'll try to get you a flexible, variable fast-load 

routine. 'Till then, "good loads, fair weather!" 


the United States by Cambridge North 
American, a subsidiary of Diversified 
Foods, a $150-million-a-year Portland, 
Maine, grocery wholesaler turned com- 
puter distributor. Diversified took a 
warning shot across the bow from Am- 
strad as it lined up to use the Sinclair 
name, which went legally to Amstrad 
when Sir Clive sold the ZX line to the 
company. Diversified finally agreed to 
rechristen the venture. E 
Cambridge North American hopes to 
be moving the Z88 through computer 
stores and major retail outlets offering 
various promotional discounts. To help 
the machine get off the ground in the 
U.S. market, the company has signed a 
letter of intent to acquire 51 percent of 
its first dealer, Executive Computers, a 
four-year-old laptop specialist in New 
York City that sells to 800 of the For- 


“tune 2,000 companies. | Al 


FILE: 2XTMT<T.DNT 
Silicon Mtn. Computers - 
C-12, Mtn. Stn. Group Box 
Nelson, EC VIL 2J3 
Canada 


November 1987 


ZX-TERM*80 AND MEMOTEXT 


This document details how you can "marry" the popular Memotext word-processor 
with our 2X-TERM*80 terminal program for the 2X81/TS1000 computers. It details 
how to up/download “raw" Memotext files, as well as how to upload text files 
created with Memotext in an ASCII format readable by any computer. 


Transferring "raw" files is quite simple, and would be useful for sending 
entire sets of files to another 2X/TS user, either directly or via a BES or 
other service. He could then view, edit, or print the files using Memotext. 
However, such raw files would not be readable by other computer users; useful 
if you want to maintain some degree of confidentiality. If you want your files 
to be formatted, perhaps justified, and readable by anyone, you will have to 
use the second approach (more complex, but not too difficult once you get the 
hang of it). 


I suggest that you first experiment with the "raw data" approach, perhaps with 
the co-operation of another local ZX/TS user. 


Regardless of which approach you use, the minimum hardware and scftware you 
need are as follows: 


HARDWARE : 


2X81, TS1000 or TS1500 computer. 

A suitable 48K or 64K RAM, with 8-1£K region disabled. 
Modem (Byte-Back, or preferably Westridge) 

Suitable static memory in 8-16K, as SCRAM, modified 
“Hunter board", or "Delta Device". 

M1* adaptor or modification. 

Tape recorder or other mass-storage. 

Printer and printer interface. 


NAU AUN 
oo oo 0 os 


SOFTWARE : 


Memotext, V3 (high memory version) 
ZX-TERM*80 


I no longer commercially supply Memotext V3. However, if you send $5 to cover 
tape. photocopying and shipping, I’11 send you a copy on a "shareware" basis. 
After you get it, send whatever you think it’s worth. 


Silicon Mountain will of course supply the 2X-TERMx80 program, on either 
cassette or EPROM. Write for details. 


TRANSFERRING "RAW" MEMOTEXT FILES 


To UPLOAD a set of Memotext files in Sinclair/Memotext format, proceed as 
follows: 


1: Set up your system. 


2: LOAD Memotext V3, and configure it for your printer and interface. You 


ae = 


may optionally load the HELP! file. Create or load your files in the usual 
way. If necessary, print them out to be sure they're as desired. (If the 
files to be transferred already exist, even if created using a different. 
version, you may skip this step.) Once your files are as you want them,” 
save to tape using SAF (save all files). 


3: Use the GIT function to exit Memotext, then enter NEW. 


4: LOAD ZT-TERM*80, and confiqure for your printer interface if desired. 
Relocate the program to 39024. After entering ZX-TERM*80, use ESCAPE (shift 
space) to return to BASIC. 


S: Re-enter Memotext at the cold boot entry point (RAND USR 43851). Re-LGAD 
your prepared files using LAF (load ali files). 


6: Aqain GIT from Memotext. Do not use RUN, CLEAR or NEW! 


7: Re-enter ZX-TERM*80 with RAND USR 42622. Get the other person on the 
line, and get ready to upload the files. When the other terminal is ready 
to receive, ao to Xmodem with SHIFT 4. Press "U" for “upload.” Then answer 
*U* for “variables.” The upload will commence. 


8: When the transfer is complete, press any Key to return to the main loop 
and terminate the connection. 


Downloadina is very similar. 
1: Set up your system. 


2: LOAD Memotext V3, configure it for your printer, and optionally load the 
HELP1 file. 


3: QIT from Memotext, enter NEW, and LOAD 2X-TERMx80. 


4: Get on-line, and prepare to download the file. Use SHIFT 4 to go to 
Xmadem, followed by "D" for "download," and "U" for “variables.” 


S: When the download is complete, return to the main loop and terminate the 
connection. ESCAPE to BASIC, answering (N)o to "SAVE FILES?” 


6: Re-enter Memotext at the warm boot (RAND USR 46555). You can now edit. 
view, or print the files just downloaded. 


TRANSFERRING FILES iN ASCII FORMAT 


Usually you will want to transfer your text as ASCII files, formatted and 
perhaps justified, in other words just as it would appear if you printed it 
out. We have to take a somewhat different tack to accomplish this. What we 
will essentially do is "fool" Memotext into thinking that it’s sending the 
text file to the printer, when actually the translated and formatted file is 
teing stored in *spare" memory. We will then use a short machine-code routine 
to transfer the finished file into ZX-TERM*80’s DATA REM buffer, for uploading 
to the other terminal. 


Geing the other way, downloading an ASCII text file, is of course no problem 
for ZX-TERM*80. If you relocate your “input buffer" as described, you can then 
use the little "dump" routine installed at the original buffer location, to 
send the file to your printer. i 


Unfortunately, it isn’t feasible to convert such an ASCII file into Memotext 
format. As a result, you won’t.be able to edit downloaded ASCII files. For 


= 2 ~- 


this reason, we will only discuss how to UPLOAD Memotext files in fully 
formatted ASCII. 

You will normally only transfer one text file at a time, though you could 
strina several short text files together into a single upload. Also, data 
files are not transferrable using this approach, unless their contents are 
referred to within the text file. > i 


To upload a Memotext file, follow these steps. As mentioned, it miaht seem 
complicated at first: however, after some practise, you'll find it easier than 
it first appears. 


1-4: Follow steps i through 4 as for "raw" uploads. If the files to be 
uploaded already exist on tape, you can omit steps 2 and 3. 


5: After ZX-TERM*80 is installed, ESCAFE to BASIC and LOAD the originai 
copy of Memotext. When asked for your interface type, answer "OTHER." Then 
enter the following hexcode sequence: 


ES2A32407723223240E1C9 


This installs a new "printer driver” that sends the translated and 
formatted ASCII output to memory instead of the printer, starting at the 
location contained in SEED (more about that later). 


6: When prompted for LF/CR options, answer “LF + CR." This is because most 
boards want to see both a linefeed and a carriage-return code at the end of 
every line. Don’t bother loading the HELP1 file; it would be overwritten 
anyway. 


7: After entering Memotext, load your file or files from tape (LTF or LAF). 
NOTE: the length of your file or files to be sent in a single upload should 
be less than around 12K. Remember, ZX-TERM*SQ’s DATA REM buffer is limited 
to about 15K. In the process of translating, spaces: are added (when 
justifying, indenting, etc.) and LF/CR codes are inserted after every line. 
As a result, the ASCII translation will typically be somewhat longer than 
the Memotext “source code.” 


- HINT: set up your file for 40 or 40-column width, using (edit)W at the 
beginning, for the convenience of other ZX-TERM*80 users. 


8: QIT to BASIC, and enter RAND 50872. This sets the starting address for 
the ASCII translation, and represents the first byte beyond Memotext’s data 
area. 


$: Re-enter Memotext at the warm boot (RAND USR 46555). 


10: "Print" your text file to memory using PTF. Answer (Continuous mode. 
Justify (Yes or (N)o as desired. After a few seconds, the program will be 
back at the FUNCTION? prompt. Repeat for any other text files you wish to 
send in this upload. 


11: QIT to BASIC. Do not enter NEW. Instead, PRINT PEEK 16434+256*PEEK 
16435. This will give the ENDING address of your translated file. If this 
is a low number (below 506872), your text file(s) is/are too lona; the 
“pointer* has wrapped around, and tried to print your file to the ROM. You 
have to edit them down and repeat the procedure if this happens. Otherwise 
you’ll crash when you try to import the file into the DATA REM buffer! 


12: Without entering any other commands, re-enter ZX-TERM*80 with RAND USR 
42622. Get into the main loop, and initialize your DATA REM using SHIFT 8. 
ESCAPE back to BASIC using shift space, followed by (No in response to 
"SAVE DATA?". 5 i 


"Ss 


13: Now comes the only tricky part. We have to enter a little machine-code 
routine to transfer the file from high memory, into the DATA REM. You have | 
to enter the following commands: 


LET AS="EMRND::LEN : GOSUB PIVAL FAST AT LPRINT >:RND GOSUB :. GOSUB 
?TRNDTAN" 


LET A$(21)=CHR$ 83 
LET A$(2Z)=CHRS118 


Entering the first command is the one that will seem laborious at first. So 
here’s a step-by-step procedure for entering this strange-looking command. 
“sh*=SHIFT, *4n*= FUNCTION (shift ENTER), "“gr*=GRAPHIC (shift 9b. 
“DEL"=DELETE (shift 0) 


CHAR: KEYS USED 


LET L 

A -A 

$ sh U 

= sh L 

A sh P 

E E > 
M M 

END tn, T 

: or, sh 1 

: S, or 

LEN fn, K 

$ ar. J, ar 
GCOSUB sh 3, H. sh 5, DEL, sh 8 


PI fn, M 

VAL tn. J 

FAST sh F 

AT fos, C 

LFRINT sh S 

) sh O i 
: er, sh H, or 

RNC fn, T 

GOSUB sh 3, H, shS, DEL, sh 8 

3 cr, K : 


i 


GOSUB sh 3, H, shS, DEL, sh 8 
? 


? 

? ? 
RND rs T 
TAN tn, E 
s sh P 
ENTER 


Enter PRINT. AS. It should look as shown above. Now enter the other two 
commands listed above. Again PRINT A$; it should still look the same. 


14: Now enter PRINT USR 32771. It should come back with 0. The file is now 
in your DATA REM buffer! 


15: Re-enter 2X-TERM*80 with RAND USR 42422. Use VU DATA (shift 5) ta 
verify that the file has, indeed been translated, formatted, and moved into 
the DATA REM. A 


16: Upload the file as usual. SHIFT 4 gets you into Xmodem. Answer 
CUdpload, then (P)rogram. And away it goes. 


16: If you wish to save the translated file, truncated to its actual 
lenath, you can of course do so by escaping, then answering (Y)es.to "SAVE 


DATA?*. Pon 


SPONSORED BY: PACIFIC COAST COMPUTER FAIR ASSOCIATION (A NON-PROFIT ORGANIZATION) 


4407 31 


NOILVZINV10d YOY NONI "3L0N 


5231 


W 


o 
Cc 
a 


13IP09II( ssaippy I8xZ 


23M00 a-—-17- OF D 


JUL 


The Vancouver Sinclair Users Group has been in existence since 
1982. We are a support group for the owners and users of all 
SINCLAIR and TIMEX computers. 


Pres:- Gerd Breunung PH#(604) 931-5509 
V/Pres:- Glenn Read 

Sec:- Harvey Taylor 

Treas. & N/L Editor:- Rod Humphreys 


Our membership dues are only $15.00/year and may be sent to 
the Treasurer: 


Rod Humphreys 
2006 Highview Place 
Port Moody, B.C., V3H 1N5 


Members of VSUG receive a monthly issue of ZXAppeal - our 
newsletter. 


ZXAppeal accepts advertising. Our **PREPAID** rates are: 


$10.00 — full page 
$8.00 — 1/2 page 
$5.00 — 1/4 page 


ZXAppeal is distributed to approx 30 other SINCLAIR User 
Groups throughout North America as well as overseas via the 
NETWORK. NETWORK correspondence may be directed to the 
Editor at the above address. | 


Copyright of all articles appearing in ZXAppeal is retained by 
the author with the understanding that other T/S User Groups 
may reprint any article appearing in ZXAppeal provided credit 
is given to the author and VSUG.